题目给你一个非负整数数组nums,你最初位于数组的第一个下标。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标,如果可以,返回true;否则,返回false。示例1:输入:nums=[2,3,1,1,4]输出:true解释:可以先跳1步,从下标0到达下标1,然后再从下标1跳3步到达最后一个下标。示例2:输入:nums=[3,2,1,0,4]输出:false解释:无论怎样,总会到达下标为3的位置。但该下标的最大跳跃长度是0,所以永远不可能到达最后一个下标。解①暴力递归法,将情况分解为当前元素是0则此路不通,非0的话看元素是几就递归几次,如果出现下标是最后一个元素的
C++判断一个字符串是否为回文串的算法(含完整源码)回文串是指正着和反着读都一样的字符串,比如“level”、“racecar”等。那么,如何用C++判断一个字符串是否为回文串呢?下面我们就一起来看一下。首先,我们要明确如何判断一个字符串是否为回文串。可以通过对称比较字符串左右两端的字符,如果相等则继续比较,否则直接判定不是回文串。闫氏算法即采用这种对称比较的思想。具体实现如下:#include#includeusingnamespacestd;boolisPalindrome(chars[]){intlen=strlen(s);for(inti=0;i以上代码中的函数isPalindrome
1.二叉树的前序遍历 144. 二叉树的前序遍历https://leetcode.cn/problems/binary-tree-preorder-traversal/这个题目在遍历的基础上还要求返回数组,数组里面按前序存放二叉树节点的值。既然要返回数组,就必然要malloc一块空间,那么我们需要算出这个二叉树的节点个数,所以就创建一个函数TreeSize求出节点个数。TreeSize的实现在上篇文章有提到http://t.csdnimg.cn/izhvv 所以在preorderTraversal里面创建一个变量n来接收TreeSize的返回值,再为变量amalloc一块空间,空间大小是n个i
[USACO1.5]回文质数PrimePalindromes题目链接(洛谷)题目描述因为151151151既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以151151151是回文质数。写一个程序来找出范围[a,b](5≤a[a,b](5≤ab≤100,000,000)(一亿)间的所有回文质数。输入格式第一行输入两个正整数aaa和bbb。输出格式输出一个回文质数的列表,一行一个。样例#1样例输入#15500样例输出#15711101131151181191313353373383提示Hint1:Generatethepalindromesandseeiftheyareprime.
回文正读倒都相同,如abcba,是对称的我们可以用循环,比较其最前面和最后面的值是否相同,再比较次前和次后……若值相同,就计数一次;若不相同,就不记数。回文由于前后对应值都相同,计数会占总个数的1/2。通过比较计数个数是否占总个数的1/2,就能判断出是否是回文。#includeintmain(){ charstr[80]; inti,count=0; intt=0; gets(str);//输入 for(i=0;str[i]!='\0';i++)//遇到字符串结束标志'\0'时停止计数 count++;//统计共有多少个字符 for(i=0;i
👀樊梓慕:个人主页 🎥个人专栏:《C语言》《数据结构》《蓝桥杯试题》《LeetCode刷题笔记》《实训项目》《C++》《Linux》🌝每一个不曾起舞的日子,都是对生命的辜负目录前言【LeetCode】415.字符串相加【LeetCode】43.字符串相乘 【LeetCode】125.验证回文字符串【LeetCode】541.反转字符串Ⅱ【LeetCode】557.反转字符串中的单词Ⅲ前言利用string的一些常用方法解题,本篇文章不乏有你眼前一亮的优秀方法,欢迎大家订阅。欢迎大家📂收藏📂以便未来做题时可以快速找到思路,巧妙的方法可以事半功倍。=========================
Leetcode刷题之有效的括号(C语言版)一、题目描述二、题目测试用例三、题目分析四、完整代码一、题目描述20、有效的括号给定一个只包括'(',')','{','}','[',']'的字符串s,判断字符串是否有效。有效字符串需满足:①、左括号必须用相同类型的右括号闭合。②、左括号必须以正确的顺序闭合。③、每个右括号都有一个对应的相同类型的左括号。二、题目测试用例三、题目分析本题是要将左括号与右括号相匹配的进行闭合,所以我们想到采用“栈”的先进后出特性来进行数据的存放操作。所以我们先要写一个栈出来,包括栈的创建,栈的销毁等许多的基础操作。如果大家忘记了栈的相关操作如何去写,可以看我之前的文章《
前言如何才能通过面试拿到大厂Offer?“刷leetcode!”这是我听到最多的回答!程序员找工作,刷leetcode真的有用吗?不刷leetcode真的就面不过吗?下面是脉脉上与面试相关的部分帖子:现在越来越多的人应聘工作时都得先刷个几十百来道题,不刷题感觉都过不了面试。无论是面测试、算法工程师还是架构开发工程师,好像都得刷题,这么多人通过刷题过了面试,说明刷题对于找工作还是有帮助的。不过这其中有一个问题:很多人虽然为了找工作刷了题,但是却不理解公司为何要采取这样的方式来考察求职者。还有很多人为此愤愤不平:“我一个架构、后端开发工程师,你不问我项目经验、开发经验,反而来问我算法题,玩呢?”算
1.回文数概念回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如121、12321、45654等。2.问题描述给你一个整数x,如果x是一个回文整数,返回true;否则,返回false。3.代码实现以下提供两种方法思路(1)方法一:将要判断的数拆分出来存入数组,再用for循环比较对应位置上的数是否一致。#includeusingnamespacestd;boolisPalindrome(intx){intstore[100];//用于存储数字的各个位inti=0;//初始化位数计数器if(x>x;if(isPalindrome(x)){//检查输入的数字是否是回文数cout(2)
顾得泉:个人主页个人专栏:《Linux操作系统》 《C/C++》 《LeedCode刷题》键盘敲烂,年薪百万!一、第N个泰波那契数题目链接:1137.第N个泰波那契数 题目描述泰波那契序列Tn定义如下: T0=0,T1=1,T2=1,且在n>=0的条件下Tn+3=Tn+Tn+1t+Tn+2 给你整数n,请返回第n个泰波那契数Tn的值。示例1: 输入:n=4 输出:4解释: T_3=0+1+1=2 T_4=1+1+2=4示例2: 输入:n=25 输出:1389537解法1.状态表